#pragma once
#include <functional>
class Defer {
private:
  std::function<void(void)> _fun;

public:
  Defer(std::function<void(void)> fun);
  ~Defer();
};